// pages/mine/mine.js
Page({
  data: {
    user: null, // 用户信息
  },

  // 页面显示时触发的生命周期函数
  onShow: function() {
    this.loadUserInfo()
  },

  // 加载用户信息的方法
  loadUserInfo: function() {
    const userId = wx.getStorageSync('userId')
    if (!userId) {
      this.setData({
        user: null
      })
      return
    }

    wx.cloud.database().collection('users').doc(userId).get({
      success: res => {
        this.setData({
          user: res.data
        })
      },
      fail: err => {
        console.error('获取用户信息失败', err)
      }
    })
  },

  // 登录按钮点击事件处理函数
  login: function() {
    wx.getUserProfile({
      desc: '用于完善用户资料',
      success: res => {
        // 调用云函数进行登录
        wx.cloud.callFunction({
          name: 'login',
          data: {
            nickname: res.userInfo.nickName,
            avatar: res.userInfo.avatarUrl,
            // 传递其他信息，如性别等
            gender: res.userInfo.gender || '未知', // 如果gender在res.userInfo中
            // address: res.userInfo.address || '未填写' // 如果有地址信息
          },
          success: cloudRes => {
            if (cloudRes.result.success) {
              wx.setStorageSync('userId', cloudRes.result.userId)
              this.loadUserInfo()
              wx.showToast({
                title: '登录成功',
                icon: 'success'
              })
            } else {
              wx.showToast({
                title: '登录失败',
                icon: 'none'
              })
            }
          },
          fail: err => {
            wx.showToast({
              title: '登录失败',
              icon: 'none'
            })
            console.error('调用云函数失败', err)
          }
        })
      },
      fail: err => {
        console.error('获取用户信息失败', err)
      }
    })
  },

  // 跳转到订单页面的事件处理函数
  goToOrders: function() {
    wx.navigateTo({
      url: '/pages/orders/orders' // 新订单页面路径
    })
  },

  // 跳转到购物车页面
  goToCart: function() {
    wx.navigateTo({
      url: '/pages/cart/cart' // 假设购物车页面路径为/pages/cart/cart
    })
  },

  // 跳转到编辑用户信息页面
  editUserInfo: function() {
    wx.navigateTo({
      url: '/pages/editUser/editUser' // 假设编辑页面路径为/pages/editUser/editUser
    })
  }
})
